export default {
  modules: [
    {
      source: "src/cli/compileConfig/index.js",
      dependencies: [
        {
          resolved: "src/extract/resolve/resolve.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../extract/resolve/resolve",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: false,
          rules: [
            {
              severity: "warn",
              name: "cli-to-main-only-warn",
            },
          ],
        },
        {
          resolved: "src/main/resolveOptions/normalize.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../main/resolveOptions/normalize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/compileConfig/mergeConfigs.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./mergeConfigs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/compileConfig/readConfig.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./readConfig",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "path",
      followable: false,
      coreModule: true,
      couldNotResolve: false,
      matchesDoNotFollow: false,
      dependencyTypes: ["core"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/resolve/resolve.js",
      dependencies: [
        {
          resolved: "src/extract/utl/pathToPosix.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../utl/pathToPosix",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/enhanced-resolve/lib/node.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          module: "enhanced-resolve",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/enhanced-resolve/lib/node.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/utl/pathToPosix.js",
      dependencies: [
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/main/resolveOptions/normalize.js",
      dependencies: [
        {
          resolved: "src/extract/transpile/meta.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../extract/transpile/meta",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/enhanced-resolve/lib/node.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          module: "enhanced-resolve",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/has.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/has",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/pnp-webpack-plugin/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "pnp-webpack-plugin",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/tsconfig-paths-webpack-plugin/lib/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "tsconfig-paths-webpack-plugin",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/lodash/get.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "node_modules/lodash/has.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "node_modules/pnp-webpack-plugin/index.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "node_modules/tsconfig-paths-webpack-plugin/lib/index.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/transpile/meta.js",
      dependencies: [
        {
          resolved: "package.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../../package.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/transpile/coffeeWrap.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./coffeeWrap",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/transpile/javaScriptWrap.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./javaScriptWrap",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/transpile/liveScriptWrap.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./liveScriptWrap",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/transpile/typeScriptWrap.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./typeScriptWrap",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "package.json",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: false,
      dependencyTypes: ["local"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/transpile/coffeeWrap.js",
      dependencies: [
        {
          resolved: "package.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../../package.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/semver-try-require/src/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "semver-try-require",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/semver-try-require/src/index.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/transpile/javaScriptWrap.js",
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/transpile/liveScriptWrap.js",
      dependencies: [
        {
          resolved: "package.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../../package.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/semver-try-require/src/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "semver-try-require",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/transpile/typeScriptWrap.js",
      dependencies: [
        {
          resolved: "package.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../../package.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/semver-try-require/src/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "semver-try-require",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/compileConfig/mergeConfigs.js",
      dependencies: [
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/isEqual.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/isEqual",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/uniqBy.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/uniqBy",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/uniqWith.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/uniqWith",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/lodash/isEqual.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "node_modules/lodash/uniqBy.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "node_modules/lodash/uniqWith.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/cli/compileConfig/readConfig.js",
      dependencies: [
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/strip-json-comments/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "strip-json-comments",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "fs",
      followable: false,
      coreModule: true,
      couldNotResolve: false,
      matchesDoNotFollow: false,
      dependencyTypes: ["core"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "node_modules/strip-json-comments/index.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/cli/formatMetaInfo.js",
      dependencies: [
        {
          resolved: "src/main/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../main",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/chalk/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "chalk",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/figures/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "figures",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/chalk/index.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "node_modules/figures/index.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/main/index.js",
      dependencies: [
        {
          resolved: "src/extract/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../extract",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/transpile/meta.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../extract/transpile/meta",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/csv/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../report/csv",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/dot/folderLevel/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../report/dot/folderLevel",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/dot/moduleLevel/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../report/dot/moduleLevel",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/err.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../report/err",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/err-html/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../report/err-html",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/html/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../report/html",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/json.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../report/json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/teamcity.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../report/teamcity",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/main/filesAndDirs/normalize.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./filesAndDirs/normalize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/main/options/normalize.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./options/normalize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/main/options/validate.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./options/validate",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/main/resolveOptions/normalize.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./resolveOptions/normalize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/main/ruleSet/normalize.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./ruleSet/normalize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/main/ruleSet/validate.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./ruleSet/validate",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/index.js",
      dependencies: [
        {
          resolved: "src/extract/addValidations.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./addValidations",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/clearCaches.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./clearCaches",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/derive/circular/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./derive/circular",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/derive/orphan/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./derive/orphan",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/derive/reachable/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./derive/reachable",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/extract.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./extract",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/gatherInitialSources.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./gatherInitialSources",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/summarize.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./summarize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/utl/pathToPosix.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./utl/pathToPosix",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/lodash.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: false,
          rules: [
            {
              severity: "info",
              name: "prefer-lodash-individuals",
            },
          ],
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/lodash/lodash.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/addValidations.js",
      dependencies: [
        {
          resolved: "src/validate/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../validate",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/validate/index.js",
      dependencies: [
        {
          resolved: "src/validate/matchDependencyRule.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./matchDependencyRule",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/validate/matchModuleRule.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./matchModuleRule",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/validate/matchDependencyRule.js",
      dependencies: [
        {
          resolved: "src/validate/isModuleOnlyRule.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./isModuleOnlyRule",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/validate/matches.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./matches",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/validate/isModuleOnlyRule.js",
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/validate/matches.js",
      dependencies: [
        {
          resolved: "src/utl/arrayUtil.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../utl/arrayUtil",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/utl/arrayUtil.js",
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/validate/matchModuleRule.js",
      dependencies: [
        {
          resolved: "src/validate/isModuleOnlyRule.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./isModuleOnlyRule",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/validate/matches.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./matches",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/clearCaches.js",
      dependencies: [
        {
          resolved: "src/extract/derive/reachable/isReachable.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./derive/reachable/isReachable",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/parse/toJavascriptAST.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./parse/toJavascriptAST",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/parse/toTypescriptAST.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./parse/toTypescriptAST",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/localNpmHelpers.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./resolve/localNpmHelpers",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/readPackageDeps/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./resolve/readPackageDeps",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/resolve.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./resolve/resolve",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/resolve-AMD.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./resolve/resolve-AMD",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/derive/reachable/isReachable.js",
      dependencies: [
        {
          resolved: "node_modules/lodash/memoize.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/memoize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/lodash/memoize.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/parse/toJavascriptAST.js",
      dependencies: [
        {
          resolved: "src/extract/transpile/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../transpile",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/utl/getExtension.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../utl/getExtension",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/acorn/dist/acorn.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "acorn",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/acorn-dynamic-import/lib/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "acorn-dynamic-import",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/acorn-loose/dist/acorn-loose.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "acorn-loose",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/memoize.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/memoize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/acorn/dist/acorn.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "node_modules/acorn-dynamic-import/lib/index.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "node_modules/acorn-loose/dist/acorn-loose.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/transpile/index.js",
      dependencies: [
        {
          resolved: "src/extract/transpile/meta.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./meta",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/utl/getExtension.js",
      dependencies: [
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/parse/toTypescriptAST.js",
      dependencies: [
        {
          resolved: "package.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../../package.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/memoize.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/memoize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/semver-try-require/src/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "semver-try-require",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/resolve/localNpmHelpers.js",
      dependencies: [
        {
          resolved: "src/extract/resolve/resolve.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          license: "MIT",
          module: "./resolve",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/memoize.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/memoize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/resolve/readPackageDeps/index.js",
      dependencies: [
        {
          resolved: "src/extract/resolve/readPackageDeps/mergePackages.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./mergePackages",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/memoize.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/memoize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/resolve/readPackageDeps/mergePackages.js",
      dependencies: [
        {
          resolved: "node_modules/lodash/clone.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/clone",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/uniq.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/uniq",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/lodash/clone.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "node_modules/lodash/uniq.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/resolve/resolve-AMD.js",
      dependencies: [
        {
          resolved: "src/extract/utl/pathToPosix.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../utl/pathToPosix",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/determineDependencyTypes.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./determineDependencyTypes",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/readPackageDeps/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./readPackageDeps",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/resolve-helpers.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./resolve-helpers",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/memoize.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/memoize",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/resolve/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "resolve",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/resolve/index.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/resolve/determineDependencyTypes.js",
      dependencies: [
        {
          resolved: "src/extract/resolve/localNpmHelpers.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./localNpmHelpers",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/resolve/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "resolve",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/resolve/resolve-helpers.js",
      dependencies: [
        {
          resolved: "src/extract/resolve/localNpmHelpers.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./localNpmHelpers",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/derive/circular/index.js",
      dependencies: [
        {
          resolved: "src/extract/derive/circular/dependencyEndsUpAtFrom.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./dependencyEndsUpAtFrom",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/derive/circular/dependencyEndsUpAtFrom.js",
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/derive/orphan/index.js",
      dependencies: [
        {
          resolved: "src/extract/derive/orphan/isOrphan.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./isOrphan",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/derive/orphan/isOrphan.js",
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/derive/reachable/index.js",
      dependencies: [
        {
          resolved: "src/extract/derive/reachable/isReachable.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./isReachable",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/clone.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/clone",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/extract.js",
      dependencies: [
        {
          resolved: "src/utl/arrayUtil.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../utl/arrayUtil",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/ast-extractors/extract-AMD-deps.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./ast-extractors/extract-AMD-deps",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/ast-extractors/extract-ES6-deps.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./ast-extractors/extract-ES6-deps",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/ast-extractors/extract-commonJS-deps.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./ast-extractors/extract-commonJS-deps",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/ast-extractors/extract-typescript-deps.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./ast-extractors/extract-typescript-deps",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/parse/toJavascriptAST.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./parse/toJavascriptAST",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/parse/toTypescriptAST.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./parse/toTypescriptAST",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          license: "MIT",
          module: "./resolve",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/lodash.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: false,
          rules: [
            {
              severity: "info",
              name: "prefer-lodash-individuals",
            },
          ],
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/ast-extractors/extract-AMD-deps.js",
      dependencies: [
        {
          resolved: "src/extract/ast-extractors/extract-commonJS-deps.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./extract-commonJS-deps",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/ast-extractors/walk.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./walk",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/ast-extractors/extract-commonJS-deps.js",
      dependencies: [
        {
          resolved: "src/extract/ast-extractors/estree-utl.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./estree-utl",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/ast-extractors/walk.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./walk",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/ast-extractors/estree-utl.js",
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/ast-extractors/walk.js",
      dependencies: [
        {
          resolved: "node_modules/acorn-dynamic-import/lib/walk.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "acorn-dynamic-import/lib/walk",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/acorn-walk/dist/walk.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "acorn-walk",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/acorn-dynamic-import/lib/walk.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "node_modules/acorn-walk/dist/walk.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/ast-extractors/extract-ES6-deps.js",
      dependencies: [
        {
          resolved: "src/extract/ast-extractors/estree-utl.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./estree-utl",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/ast-extractors/walk.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./walk",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/ast-extractors/extract-typescript-deps.js",
      dependencies: [
        {
          resolved: "package.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../../package.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/semver-try-require/src/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "semver-try-require",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/resolve/index.js",
      dependencies: [
        {
          resolved: "src/extract/utl/pathToPosix.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../utl/pathToPosix",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/resolve-AMD.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./resolve-AMD",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/resolve-commonJS.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./resolve-commonJS",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/resolve/resolve-commonJS.js",
      dependencies: [
        {
          resolved: "src/extract/utl/pathToPosix.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../utl/pathToPosix",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/determineDependencyTypes.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./determineDependencyTypes",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/isFollowable.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./isFollowable",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/readPackageDeps/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./readPackageDeps",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/resolve.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          license: "MIT",
          module: "./resolve",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/resolve/resolve-helpers.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./resolve-helpers",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/resolve/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "resolve",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/resolve/isFollowable.js",
      dependencies: [
        {
          resolved: "src/extract/utl/getExtension.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../utl/getExtension",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/extract/gatherInitialSources.js",
      dependencies: [
        {
          resolved: "src/extract/transpile/meta.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./transpile/meta",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/extract/utl/pathToPosix.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./utl/pathToPosix",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/glob/glob.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "ISC",
          module: "glob",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/glob/glob.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/summarize.js",
      dependencies: [
        {
          resolved: "src/extract/utl/order.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./utl/order",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/flattenDeep.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/flattenDeep",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/lodash/flattenDeep.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/extract/utl/order.js",
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/csv/index.js",
      dependencies: [
        {
          resolved: "src/report/dependencyToIncidenceTransformer.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../dependencyToIncidenceTransformer",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/csv/csv.template.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./csv.template",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/handlebars/runtime.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/report/dependencyToIncidenceTransformer.js",
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/csv/csv.template.js",
      dependencies: [
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/dot/folderLevel/index.js",
      dependencies: [
        {
          resolved: "src/report/dot/common/coloring.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../common/coloring",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/dot/common/compareOnSource.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../common/compareOnSource",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/dot/common/folderify.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../common/folderify",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved:
            "src/report/dot/folderLevel/consolidateModuleDependencies.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./consolidateModuleDependencies",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/dot/folderLevel/consolidateModules.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./consolidateModules",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/dot/folderLevel/ddot.template.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./ddot.template",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/dot/common/coloring.js",
      dependencies: [
        {
          resolved: "src/report/dot/common/richModuleColorScheme.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./richModuleColorScheme.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/dot/common/richModuleColorScheme.json",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: false,
      dependencyTypes: ["local"],
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/dot/common/compareOnSource.js",
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/dot/common/folderify.js",
      dependencies: [
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/dot/folderLevel/consolidateModuleDependencies.js",
      dependencies: [
        {
          resolved: "node_modules/lodash/clone.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/clone",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/reject.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/reject",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/uniqBy.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/uniqBy",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/lodash/reject.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/report/dot/folderLevel/consolidateModules.js",
      dependencies: [
        {
          resolved: "node_modules/lodash/clone.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/clone",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/reject.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/reject",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/dot/folderLevel/ddot.template.js",
      dependencies: [
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/dot/moduleLevel/index.js",
      dependencies: [
        {
          resolved: "src/report/dot/common/coloring.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../common/coloring",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/dot/common/compareOnSource.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../common/compareOnSource",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/dot/common/folderify.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../common/folderify",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/dot/moduleLevel/dot.template.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./dot.template",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/dot/moduleLevel/dot.template.js",
      dependencies: [
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/err.js",
      dependencies: [
        {
          resolved: "node_modules/chalk/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "chalk",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/figures/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "figures",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/err-html/index.js",
      dependencies: [
        {
          resolved: "package.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../../package.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/err-html/err-html.template.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./err-html.template",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/err-html/err-html.template.js",
      dependencies: [
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/html/index.js",
      dependencies: [
        {
          resolved: "src/report/dependencyToIncidenceTransformer.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../dependencyToIncidenceTransformer",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/report/html/html.template.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./html.template",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/html/html.template.js",
      dependencies: [
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/json.js",
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/report/teamcity.js",
      dependencies: [
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/teamcity-service-messages/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "teamcity-service-messages",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/teamcity-service-messages/index.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/main/filesAndDirs/normalize.js",
      dependencies: [
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/main/options/normalize.js",
      dependencies: [
        {
          resolved: "src/main/options/defaults.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./defaults.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/main/options/defaults.json",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: false,
      dependencyTypes: ["local"],
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/main/options/validate.js",
      dependencies: [
        {
          resolved: "src/utl/safe-regex.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../utl/safe-regex",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/utl/safe-regex.js",
      dependencies: [
        {
          resolved: "node_modules/regexp-tree/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "regexp-tree",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/regexp-tree/index.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/main/ruleSet/normalize.js",
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/main/ruleSet/validate.js",
      dependencies: [
        {
          resolved: "src/utl/safe-regex.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../utl/safe-regex",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/main/options/validate.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../options/validate",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/main/ruleSet/config-schema.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./config-schema.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/ajv/lib/ajv.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "ajv",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/main/ruleSet/config-schema.json",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: false,
      dependencyTypes: ["local"],
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/ajv/lib/ajv.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/cli/getResolveConfig.js",
      dependencies: [
        {
          resolved: "src/cli/utl/makeAbsolute.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./utl/makeAbsolute",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/utl/makeAbsolute.js",
      dependencies: [
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/index.js",
      dependencies: [
        {
          resolved: "src/main/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../main",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/formatMetaInfo.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./formatMetaInfo",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/getResolveConfig.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./getResolveConfig",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/initConfig/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./initConfig",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/normalizeOptions.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./normalizeOptions",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/parseTSConfig.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./parseTSConfig",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/utl/io.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./utl/io",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/utl/validateFileExistence.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./utl/validateFileExistence",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/glob/glob.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "ISC",
          module: "glob",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/initConfig/index.js",
      dependencies: [
        {
          resolved: "src/cli/defaults.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../defaults.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/initConfig/createConfigFile.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./createConfigFile",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/initConfig/getUserInput.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./getUserInput",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/initConfig/helpers.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./helpers",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/defaults.json",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: false,
      dependencyTypes: ["local"],
      dependencies: [],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/initConfig/createConfigFile.js",
      dependencies: [
        {
          resolved: "package.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../../package.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/initConfig/config.js.template.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./config.js.template",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/initConfig/config.json.template.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./config.json.template",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/initConfig/helpers.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./helpers",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/initConfig/config.js.template.js",
      dependencies: [
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/initConfig/config.json.template.js",
      dependencies: [
        {
          resolved: "node_modules/handlebars/runtime.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "handlebars/runtime",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/initConfig/helpers.js",
      dependencies: [
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/initConfig/getUserInput.js",
      dependencies: [
        {
          resolved: "src/cli/defaults.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../defaults.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/initConfig/helpers.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./helpers",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/inquirer/lib/inquirer.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "inquirer",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/inquirer/lib/inquirer.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/cli/normalizeOptions.js",
      dependencies: [
        {
          resolved: "src/cli/compileConfig/index.js",
          coreModule: false,
          followable: true,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./compileConfig",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "src/cli/defaults.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "./defaults.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/clone.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/clone",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/set.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/set",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "node_modules/lodash/set.js",
      followable: false,
      coreModule: false,
      couldNotResolve: false,
      matchesDoNotFollow: true,
      dependencyTypes: ["npm"],
      dependencies: [],
      orphan: false,
      valid: true,
    },
    {
      source: "src/cli/parseTSConfig.js",
      dependencies: [
        {
          resolved: "package.json",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["local"],
          module: "../../package.json",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/lodash/get.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "lodash/get",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
        {
          resolved: "path",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "path",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
        {
          resolved: "node_modules/semver-try-require/src/index.js",
          coreModule: false,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["npm"],
          license: "MIT",
          module: "semver-try-require",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: true,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/utl/io.js",
      dependencies: [
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
    {
      source: "src/cli/utl/validateFileExistence.js",
      dependencies: [
        {
          resolved: "fs",
          coreModule: true,
          followable: false,
          couldNotResolve: false,
          dependencyTypes: ["core"],
          module: "fs",
          moduleSystem: "cjs",
          dynamic: false,
          matchesDoNotFollow: false,
          circular: false,
          valid: true,
        },
      ],
      orphan: false,
      reachable: [
        {
          value: true,
          asDefinedInRule: "not-unreachable-from-cli",
        },
      ],
      valid: true,
    },
  ],
  summary: {
    violations: [
      {
        type: "dependency",
        from: "src/cli/compileConfig/index.js",
        to: "src/extract/resolve/resolve.js",
        rule: {
          severity: "warn",
          name: "cli-to-main-only-warn",
        },
      },
      {
        type: "dependency",
        from: "src/extract/extract.js",
        to: "node_modules/lodash/lodash.js",
        rule: {
          severity: "info",
          name: "prefer-lodash-individuals",
        },
      },
      {
        type: "dependency",
        from: "src/extract/index.js",
        to: "node_modules/lodash/lodash.js",
        rule: {
          severity: "info",
          name: "prefer-lodash-individuals",
        },
      },
    ],
    error: 0,
    warn: 1,
    info: 2,
    totalCruised: 127,
    totalDependenciesCruised: 259,
    optionsUsed: {
      combinedDependencies: false,
      doNotFollow: {
        dependencyTypes: [
          "npm",
          "npm-dev",
          "npm-optional",
          "npm-peer",
          "npm-bundled",
          "npm-no-pkg",
        ],
      },
      exclude: {
        path: "fixtures|test/integration",
      },
      externalModuleResolutionStrategy: "node_modules",
      moduleSystems: ["amd", "cjs", "es6"],
      outputTo: "-",
      outputType: "json",
      prefix: "https://github.com/sverweij/dependency-cruiser/blob/develop/",
      preserveSymlinks: false,
      rulesFile: ".dependency-cruiser.json",
      tsPreCompilationDeps: false,
      args: "src",
    },
    ruleSetUsed: {
      forbidden: [
        {
          name: "cli-to-main-only",
          comment: "cli should only depend on the public interface in main",
          severity: "error",
          from: {
            path: "(^src/cli)",
            pathNot: "^(src/cli/compileConfig/index\\.js)$",
          },
          to: {
            pathNot: "^src/main|^node_modules|^fs$|^path$|$1|^package.json$",
          },
        },
        {
          name: "cli-to-main-only-warn",
          comment:
            "cli should only depend on the public interface in main (temp exception)",
          severity: "warn",
          from: {
            path: "^(src/cli/compileConfig/index\\.js)$",
          },
          to: {
            pathNot:
              "^src/(cli|main)|^node_modules|^fs$|^path$|$1|^package.json$",
          },
        },
        {
          name: "bin-to-cli-only",
          comment: "bin should only depend on cli",
          severity: "error",
          from: {
            path: "(^bin/dependency-cruise)",
          },
          to: {
            pathNot: "^src/cli|^node_modules|^package.json$",
          },
        },
        {
          name: "restrict-fs-access",
          comment: "restrict file access to a few modules only",
          severity: "error",
          from: {
            pathNot:
              "^src/(extract/parse|extract/resolve|extract/gatherInitialSources\\.js|cli)|^test",
          },
          to: {
            path: "^fs$",
          },
        },
        {
          name: "no-inter-module-test",
          severity: "error",
          from: {
            path: "(^test/[^\\/]+/)[^\\.]+\\.spec\\.js",
          },
          to: {
            path: "^test/[^\\/]+/.+",
            pathNot: "utl|$1[^\\.]+\\.json$",
          },
        },
        {
          name: "prefer-lodash-individuals",
          comment:
            "Flag dependencies that include lodash as a whole (better use individual lodash packages e.g. 'lodash/get')",
          severity: "info",
          from: {},
          to: {
            path: "lodash\\.js",
          },
        },
        {
          name: "no-dep-on-test",
          severity: "error",
          from: {
            path: "^(src|bin)",
          },
          to: {
            path: "^test|\\.spec\\.js$",
          },
        },
        {
          name: "no-external-to-here",
          comment: "you never know...",
          severity: "info",
          from: {
            pathNot: "^(src|test|bin)",
          },
          to: {
            path: "^(src|test)",
          },
        },
        {
          name: "not-to-dev-dep",
          severity: "error",
          comment:
            "because an npm i --production will otherwise deliver an unreliably running module",
          from: {
            path: "^(bin|src)",
          },
          to: {
            dependencyTypes: ["npm-dev"],
          },
        },
        {
          name: "optional-deps-used",
          severity: "error",
          comment: "we don't work with optional dependencies",
          from: {},
          to: {
            dependencyTypes: ["npm-optional"],
          },
        },
        {
          name: "peer-deps-used",
          comment: "we don't work with peer dependencies",
          severity: "error",
          from: {},
          to: {
            dependencyTypes: ["npm-peer"],
          },
        },
        {
          name: "no-unvetted-license",
          comment:
            "Warn in case some dependency uses a license that's not vetted (the licenses might be OK, but your legal department might have 2nd thoughts about them)",
          severity: "warn",
          from: {},
          to: {
            licenseNot: "MIT|ISC",
          },
        },
        {
          name: "not-unreachable-from-cli",
          severity: "warn",
          from: {
            path: "^src/cli/index\\.js$",
          },
          to: {
            path: "^src",
            reachable: false,
          },
        },
        {
          name: "not-unreachable-from-test",
          comment:
            "everything in src must be reachable from a spec file (poor man's test coverage - this task is better suited for a proper test coverage tool :-)",
          severity: "error",
          from: {
            path: "\\.spec\\.js$",
          },
          to: {
            path: "^src",
            reachable: false,
          },
        },
        {
          name: "no-orphans",
          comment:
            "Modules without any incoming or outgoing dependencies might indicate unused code.",
          severity: "error",
          from: {
            orphan: true,
            pathNot: "\\.d\\.ts$",
          },
          to: {},
        },
        {
          name: "no-circular",
          comment: "circular dependencies will make you dizzy",
          severity: "error",
          from: {},
          to: {
            circular: true,
          },
        },
        {
          name: "no-deprecated-core",
          comment: "These core modules are deprecated - find an alternative.",
          severity: "error",
          from: {},
          to: {
            dependencyTypes: ["core"],
            path: [
              "^(v8/tools/codemap)$",
              "^(v8/tools/consarray)$",
              "^(v8/tools/csvparser)$",
              "^(v8/tools/logreader)$",
              "^(v8/tools/profile_view)$",
              "^(v8/tools/profile)$",
              "^(v8/tools/SourceMap)$",
              "^(v8/tools/splaytree)$",
              "^(v8/tools/tickprocessor-driver)$",
              "^(v8/tools/tickprocessor)$",
              "^(node-inspect/lib/_inspect)$",
              "^(node-inspect/lib/internal/inspect_client)$",
              "^(node-inspect/lib/internal/inspect_repl)$",
              "^(async_hooks)$",
              "^(assert)$",
              "^(punycode)$",
              "^(domain)$",
              "^(constants)$",
              "^(sys)$",
              "^(_linklist)$",
              "^(_stream_wrap)$",
            ],
          },
        },
        {
          name: "no-duplicate-dep-types",
          comment: "including things twice?",
          severity: "error",
          from: {},
          to: {
            moreThanOneDependencyType: true,
          },
        },
        {
          name: "no-non-package-json",
          severity: "error",
          comment:
            "because an npm i --production will otherwise deliver an unreliably running module",
          from: {},
          to: {
            dependencyTypes: ["npm-no-pkg", "npm-unknown"],
          },
        },
        {
          name: "not-to-deprecated",
          comment: "These modules are deprecated - find an alternative.",
          severity: "error",
          from: {},
          to: {
            dependencyTypes: ["deprecated"],
          },
        },
        {
          name: "not-to-unresolvable",
          severity: "error",
          from: {},
          to: {
            couldNotResolve: true,
          },
        },
      ],
      allowed: [],
      allowedSeverity: "warn",
    },
  },
};
